home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1998 April: Mac OS SDK / Dev.CD Apr 98 SDK1.toast / Development Kits (Disc 1) / Apple Shared Library Manager / ASLM Developer Tools / Interfaces / RIncludes / librTemplate.r next >
Encoding:
Text File  |  1996-11-19  |  2.0 KB  |  72 lines  |  [TEXT/MPS ]

  1. /*
  2.     File:        librTemplate.r
  3.  
  4.     Contains:    Template for a 'libr' resource
  5.  
  6.     Copyright:    © 1991-1994 by Apple Computer, Inc., all rights reserved.
  7.  
  8. */
  9.  
  10. #ifndef __LIBRTEMPLATE__
  11. #define __LIBRTEMPLATE__
  12.  
  13. /*
  14.     Template for a 'libr' resource which is located in each library. There is one
  15.     per library so there could be more than one in a library file. It gives information
  16.     about the library including what classes it implements.
  17. */
  18.  
  19. type 'libr' {
  20.     array LibrLine {                    /* information for a library */
  21.         cstring;                        /* Library id */
  22.         align word;
  23.         string[4];                        /* code resource type */
  24.         hex byte;                        /* libr template major version */
  25.         hex byte;                        /* libr template minor version */
  26.         hex byte;                        /* Major version */
  27.         hex byte;                        /* Minor revision */
  28.         hex byte;                        /* Development stage */
  29.         hex byte;                        /* Release within stage */
  30.         hex byte;                        /* Reserved in v1 (0)    */
  31.         hex byte;                        /* Compiler type        */
  32.         integer;                        /* perClientDataSize in v1 (0 = default) */
  33.         longint;                        /* HeapSize in v1 (0 = default) */
  34.         longint     preload = 0x01,
  35.                     clientPool = 0x02,
  36.                     nosegunload = 0x04,
  37.                     loaddeps = 0x08,
  38.                     forcedeps = 0x10,
  39.                     loadself  = 0x20,
  40.                     notSystem7 = 0x10000,
  41.                     notSystem6 = 0x20000,
  42.                     notVMOn = 0x40000,
  43.                     notVMOff= 0x80000,
  44.                     hasFPU=0x100000,
  45.                     hasNoFPU=0x200000,
  46.                     not68000=0x400000,
  47.                     not68020=0x800000,
  48.                     not68030=0x1000000,
  49.                     not68040=0x2000000,
  50.                     powerPC=0x4000000,
  51.                     notPowerPC=0x8000000;    /* flags for the code resource */
  52.         integer = $$Countof(ClassIDs);    /* # class IDs */
  53.         array ClassIDs{                    /* array of classIds the library implements */
  54.             longint    preload = 0x01,
  55.                     newobject = 0x02,
  56.                     isFunctionSet = 0x04;    /* flags for the class */
  57.             integer;                        /* current version        */
  58.             integer;                        /* minimum version        */
  59.             cstring;                        /* the class id string    */
  60.             align WORD;
  61.             integer = $$CountOf(ParentIDs);
  62.             array ParentIDs {
  63.                 cstring;
  64.             };                            /* the parent class id string */
  65.             align WORD;
  66.         };
  67.     };
  68. };        
  69.  
  70. type 'Libr' as 'libr';
  71.  
  72. #endif